One known input device is a keyboard for entering commands, including characters and instructions. For example, a desktop computer or a laptop computer generally comprises a physical keyboard having a plurality of physical keys. Pressing a key triggers a control circuit in the keyboard to generate and send a command to the computer. Depending on the key pressed, the command may be a character to be entered into the computer or an instruction instructing the computer to perform one or more designated actions. Standard keyboards are sized for ergonomic effectiveness including finger/key spacing. However, these physical keyboards are usually large in size and not well suited for generally more compact mobile devices.
Devices having touch-sensitive displays such as tablets and smartphones generally use a so-called “software keyboard” for inputting characters. In these devices, a keyboard image is displayed on the touch-sensitive display. When a user uses a pointer, e.g., a finger, stylus or digital pen, to contact the display at a location overlapping a “virtual” key in the displayed keyboard image, the device detects the “virtual” key and generates a character or a command corresponding thereto. However, software keyboards remain limited to the size of the display, and do not provide an adequate text input experience for intensive or complex tasks.
Some input devices require the use of angle encoders. Some angle encoders such as rotary angle encoders are known. For example, one type of rotary angle encoder generally comprises a shaft rotatable about its axis. A disc is fixed to the shaft rotatable therewith, and is received in a stationary housing. The disc is partitioned into a plurality of rings, each being further partitioned to a plurality of segments. The segments are processed such that some segments are connected to an electrical source and others are electrically insulated therefrom to form an encoder pattern.
The housing also receives a row of sliding contacts fixed thereto. Each contact rests against a ring of the disc, and is connected to a separate electrical detector. When the disc rotates with the shaft, the contacts overlapping with the segments that connect to the electrical source connect the respective electrical detectors to the electrical source, causing the respective detectors to detect an “ON” signal; and the contacts overlapping with the segments that are insulated from the electrical source separate the respective electrical detectors from the electrical source, causing the respective detectors to detect an “OFF” signal. In this manner, the detectors together generate a binary codeword representing the angular position of the shaft.
FIG. 1 shows a prior art encoder pattern 50 for imprinting onto the rotatable disc. As shown, the encoder pattern 50 is an encoder disc partitioned into three (3) rings 52, 54 and 56, each being further partitioned to eight (8) angularly aligned, angularly equal-length segments. The shaded segments 58 are connected to an electrical source, and the non-shaded segments 60 are insulated therefrom. Three contacts (not shown) are in contact with the three rings 52 to 56, respectively. When the disc rotates with the shaft (not shown) to a position such that the contacts are along the line 62, the electrical detectors (not shown) together generates a binary codeword 001 representing the current angular position of the shaft.
When the shaft further rotates such that the contacts fall within another set of segments, another binary codeword is then generated. To reduce angle detection error, the encoder pattern 50 may be arranged in a manner to generate Gray code. As those skilled in the art appreciate, a Gray code comprises a set of binary codewords arranged in a particular order such that each codeword differs from its neighboring or adjacent codeword by only one bit, i.e., the so-called Hamming distance of any pair of adjacent codewords is 1. A cyclic Gray code is a Gray code wherein the first and last codewords also differ by only one bit. The Gray code is disclosed in U.S. Pat. No. 2,632,058, entitled “Pulse code communication,” to Gray, issued on Mar. 17, 1953, the content of which is incorporated herein by reference in its entirety.
In the example of FIG. 1, the angular measurement precision is 45°, i.e., any angle change less than 45° is not measurable, and the measured angle is always an integer multiplication of 45°. To improve the angular measurement precision, more rings and segments are required.
One problem of the above angle encoders is that the angular resolution, i.e., the smallest measurable angular change, is limited by a number of factors which prevent further improvements in resolution, accuracy or miniaturization. These factors include (1) the limited capability of the reading apparatus to discern one segment from the next, (2) the inability to manufacture discs having small-size segments, and (3) mechanical frailty of small-size encoder discs and reader mechanisms.
It is therefore an object to provide a novel user input method and a system employing the same. It is another object to provide an improved angle encoder and methods of measuring an angle using same.